widget: Add gtk_widget_get_clipboard()
authorBenjamin Otte <otte@redhat.com>
Sat, 25 Nov 2017 22:55:34 +0000 (23:55 +0100)
committerBenjamin Otte <otte@redhat.com>
Sun, 3 Dec 2017 04:46:47 +0000 (05:46 +0100)
... and gtk_widget_get_primary_clipboard().

They both give out the new GdkClipboard.

docs/reference/gtk/gtk4-sections.txt
gtk/gtkwidget.c
gtk/gtkwidget.h

index ebd4a4cfb291073fc3e3035ed800ea80dc3c4a85..220bb62e45f1df482890597fb3b05268f4aa8b8e 100644 (file)
@@ -4530,6 +4530,8 @@ gtk_widget_freeze_child_notify
 gtk_widget_get_child_visible
 gtk_widget_get_parent
 gtk_widget_get_settings
+gtk_widget_get_clipboard
+gtk_widget_get_primary_clipboard
 gtk_widget_get_old_clipboard
 gtk_widget_get_display
 gtk_widget_get_size_request
index 4d250c9bb801d55bcb476a609f972baa10a63189..51b0864c39132392337f2c5511b1fe503647fe0c 100644 (file)
@@ -12379,6 +12379,50 @@ gtk_widget_set_margin_bottom (GtkWidget *widget,
   g_object_notify_by_pspec (G_OBJECT (widget), widget_props[PROP_MARGIN_BOTTOM]);
 }
 
+/**
+ * gtk_widget_get_clipboard:
+ * @widget: a #GtkWidget
+ *
+ * This is a utility function to get the clipboard object for the
+ * #GdkDisplay that @widget is using.
+ *
+ * Note that this function always works, even when @widget is not
+ * realized yet.
+ *
+ * Returns: (transfer none): the appropriate clipboard object.
+ *
+ * Since: 3.94
+ **/
+GdkClipboard *
+gtk_widget_get_clipboard (GtkWidget *widget)
+{
+  g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
+  return gdk_display_get_clipboard (gtk_widget_get_display (widget));
+}
+
+/**
+ * gtk_widget_get_primary_clipboard:
+ * @widget: a #GtkWidget
+ *
+ * This is a utility function to get the primary clipboard object 
+ * for the #GdkDisplay that @widget is using.
+ *
+ * Note that this function always works, even when @widget is not
+ * realized yet.
+ *
+ * Returns: (transfer none): the appropriate clipboard object.
+ *
+ * Since: 3.94
+ **/
+GdkClipboard *
+gtk_widget_get_primary_clipboard (GtkWidget *widget)
+{
+  g_return_val_if_fail (GTK_IS_WIDGET (widget), NULL);
+
+  return gdk_display_get_primary_clipboard (gtk_widget_get_display (widget));
+}
+
 /**
  * gtk_widget_get_old_clipboard:
  * @widget: a #GtkWidget
index 5631299d4130543e2c621468c34f53babab405e2..edb7feac58efd645f3a83f692a5379d30b031c4e 100644 (file)
@@ -782,6 +782,10 @@ GDK_AVAILABLE_IN_ALL
 GdkDisplay *  gtk_widget_get_display     (GtkWidget *widget);
 GDK_AVAILABLE_IN_ALL
 GtkSettings*  gtk_widget_get_settings    (GtkWidget *widget);
+GDK_AVAILABLE_IN_3_94
+GdkClipboard *gtk_widget_get_clipboard   (GtkWidget *widget);
+GDK_AVAILABLE_IN_3_94
+GdkClipboard *gtk_widget_get_primary_clipboard (GtkWidget *widget);
 GDK_AVAILABLE_IN_ALL
 GtkClipboard *gtk_widget_get_old_clipboard   (GtkWidget *widget,
                                          GdkAtom    selection);